
#ifndef GLWINDOW_H
#define GLWINDOW_H

// GLEW
#include <GL\glew.h>

// OPENGL
#include <GL\GL.h>

// MISC
#include <cassert>
#include <iostream>

// QT
#include <QGLWidget>
#include <qtimer.h>
#include <QtDebug>
#include <QStackedLayout>

// SOLUTION
#include "Maths\Vector2.h"
#include "Timing\Clock.h"

using namespace Shiny::Timing;

namespace Shiny
{
	namespace Editor
	{
		class GLWindow : public QGLWidget
		{
			Q_OBJECT	 // MetaData Macro for QT

			Clock clock;

			QTimer timer;
			GLuint myGlList;
			GLuint vertexBufferID;

		public:
			bool Shutdown();
			bool Initialise();
		protected:
			void initializeGL();
			void paintGL();


			private slots:

				void frameUpdate();
		};
	}
}
#endif